Attribute VB_Name = "Module1"
Sub mnozenjematrice()
Dim a(20, 20) As Double, b(20, 20) As Double, c(20, 20) As Double
    Worksheets(1).Activate
        m = Cells(1, 1)                         'ovde upisujemo kolika je matrica 3x3
        n = Cells(1, 2)
        For i = 1 To m
            For j = 1 To n
                a(i, j) = Cells(i + 1, j)
            Next
        Next
    Worksheets(2).Activate
      If n = Cells(1, 1) Then                     'ucitavamo B
        p = Cells(1, 2)
        For i = 1 To p
            For j = 1 To n
                b(i, j) = Cells(i + 1, j)
            Next
        Next
    For i = 1 To m          'obezbedjuje da prodjemo kroz matricu c
        For j = 1 To p      'a(i,k) b(j,k)
            s = 0
            For k = 1 To n
                s = s + a(i, k) * b(k, j)
            Next
            c(i, j) = s
        Next
    Next
    Worksheets.Add
        For i = 1 To m
            For j = 1 To p
            Cells(i, j) = c(i, j)
            Next
        Next
    Else
        MsgBox ("nije definisano")
    End If
End Sub


Sub formiratimatC()
Dim i, j, n As Long
Dim a(100, 100), b(100, 100), c(100, 100) As Double
    Worksheets(1).Activate           'ucitamo a
    n = Cells(1, 1)
    For i = 1 To n
        For j = 1 To n
        a(i, j) = Cells(i + 1, j)
        Next
    Next
    Worksheets(2).Activate              'ucitamo b
    n = Cells(1, 1)
    For i = 1 To n
        For j = 1 To n
        b(i, j) = Cells(i + 1, j)
        Next
    Next
    For i = 1 To n                     'ubacujemo A u mat C
        For j = 1 To n
            c(i, j) = a(i, j)
        Next
    Next
    For i = n + 1 To 2 * n 'zasto???    ubacivanje 0 (preskocice n i krece sledeci odmah posle n
        For j = 1 To n
        c(i, j) = 0
        Next
    Next
    For i = n + 1 To 2 * n              'ubacivanje b
        For j = n + 1 To 2 * n
            c(i, j) = b(i - n, j - n)
        Next
    Next
    For i = 1 To n
        For j = n + 1 To 2 * n      'zasto nije obrnuto???
            c(i, j) = 0             'stavimo da su sva polja nule
        Next
            c(i, n + i) = 1             ' ispisivanje jedinica
    Next
    Worksheets.Add
    For i = 1 To 2 * n
        For j = 1 To 2 * n
            Cells(i, j) = c(i, j)
        Next
    Next
End Sub


Sub formiratic2()
Dim i, j, n, k As Long
Dim a(100, 100), c(100, 100), a2(100, 100) As Double
Dim x(100), s As Double

    n = Cells(1, 1)         'dimenzije mat A
    For i = 1 To n             'ucitavanje
        For j = 1 To n
            a(i, j) = Cells(i + 1, j)
        Next
    Next
    For i = 1 To n                      'unos niza x
        x(i) = Cells(i + 1, n + 1)
    Next
    For i = 1 To n                      'A na kvadrat, racunanje
        For j = 1 To n
            s = 0
            For k = 1 To n
                s = s + a(i, k) * a(k, j)     'nauci napamet :)
            Next
            a2(i, j) = s
        Next
    Next
    c(1, 1) = 1
    c(1, n + 2) = 1
    c(n + 2, n + 2) = 1
    c(n + 2, 1) = 1
    For i = 1 To n
        c(1, i + 1) = x(i)             'kako ovo?
        c(n + 2, i + 1) = x(i)
        c(i + 1, 1) = x(i)
        c(i + 1, n + 2) = x(i)
    Next
    For i = 1 To n
        For j = 1 To n              'upisivanje a2
        c(1 + j, 1 + i) = a2(i, j)
        Next
    Next
    Worksheets.Add
    For i = 1 To n + 2          'zasto n+2
        For j = 1 To n + 2
        Cells(i, j) = c(i, j)
        Next
    Next
End Sub
Dovde je sigurno tacno.....Dalje je po profesorovom,ali ne radi :)
Sub z1()
Dim i, j, n, k As Long
Dim a(100, 100), c(100, 100), b(100, 100), abt(100, 100) As Double
Dim x(100), y(100), s, xty As Double
ActiveWorkbook.Worksheets(1).Activate
n = Cells(1, 1)         'uneta matrica A
    For i = 1 To n
        For j = 1 To n
            a(i, j) = Cells(i + 1, j)
        Next
    Next
ActiveWorkbook.Worksheets(2).Activate
n = Cells(1, 1)
For i = 1 To n              'uneta matrica B
    For j = 1 To n
        b(i, j) = Cells(i + 1, j)
    Next
Next
ActiveWorkbook.Worksheets(3).Activate
n = Cells(1, 1)
For i = 1 To n
    x(i) = Cells(i + 1, 1)
    y(i) = Cells(i + 1, 2)                           'ucitavanje nizova
Next
xty = 0
For i = 1 To n                              'mnozenje nizova xty
    xty = xty + x(i) * y(i)
Next
    
    For i = 1 To n                    'ABt
        For j = 1 To n
            s = 0
        For k = 1 To n
            s = s + a(i, k) * b(j, k)
        Next
            abt(i, j) = s
        Next
    Next
        c(1, 1) = xty
    For i = 1 To n
        c(1, 1 + i) = y(i)
    Next
    For i = 1 To n
        For j = 1 To n
        c(i + 1, j) = abt(i, j)
        Next
    Next
    For i = 1 To n
        c(i + 1, n + 1) = x(i)
    Next
    ActiveWorkbook.Worksheets.Add
    For i = 1 To n
        For j = 1 To n
            Cells(i, j) = c(i, j)
            Next
    Next
    
End Sub


Sub z4()
Worksheets(1).Activate
    n = Cells(1, 1)
For i = 1 To n
    For j = 1 To n
        a(i, j) = Cells(i + 1, j)
    Next
Next
For i = 1 To n
    For j = 1 To n
        b(i, j) = Cells(i + 1, j)
    Next
Next
For i = 1 To n
    x(i) = Cells(i + 1, 1)
    y(i) = Cells(i + 1, 2)
Next
For i = 1 To n                      'izracunao bx
        s = 0
    For k = 1 To n
        s = s + b(i, j) * x(i)
    Next
        bx(i) = s
Next
For i = 1 To n
    For j = 1 To n
        s = 0
    For k = 1 To n
        s = s + a(i, k) * a(k, j) * b(k, j)     'da li moze ovako?
    Next
        a2b(i, j) = s
    Next
Next
For i = 1 To n
    For j = 1 To n
        s = 0                                      'aty
    For k = 1 To n
        s = s + a(j, i) * y(i)
    Next
        aty(i) = s
    Next
Next
        For i = 1 To n
            c(i, 1) = bx(i)
        Next
        For i = 1 To n
            For j = 1 To n
            c(i, j + 1) = a2b(i, j)
            Next
        Next
        For i = 1 To n
            c(i, n + 2) = aty(i)
        Next
End Sub


Sub z5()
'ucitati sve matrice, isto kao u predhodnim zadacima
For i = 1 To n
        s = 0
    For j = 1 To n
        s = s + b(i, j) * x(i)
    Next
Next
For i = 1 To n
    For j = 1 To n
    s = 0
    For k = 1 To n
    s = s + a2(i, k) * a(k, j)
    Next
    a2b(i, j) = s
    Next
Next
For i = 1 To n
    s = 0
    For j = 1 To n
    s = s + a(j, i) * y(i)
    Next
    aty(i) = s
Next
For i = 1 To n
    c(i, 1) = bx(i)
Next
For i = 1 To n
    For j = 1 To n
    c(i, j + 1) = a2b(i, j)
    Next
Next
For i = 1 To n
    c(i, n + 2) = aty(i)
Next
End Sub


Sub z7()
For i = 1 To n
    s = 0
    For j = 1 To n
    s = s + x(i) * b(i, j)
    Next
Next
For i = 1 To n
    xtbt = (i) = s
Next
End Sub
For i = 1 To n
    For j = 1 To n
        s = 0
    For k = 1 To n
        s = s + a(k, i) * a(k, j)
    Next
    ata(i, j) = s
    Next
Next
ytx = 0
For i = 1 To n
    ytx = ytx + y(i) * x(i)
Next
For i = 1 To n
    For j = 1 To n
        ytxb(i, j) = ytx * b(i, j)
    Next
Next
For i = 1 To n
    c(1, i) = xtbt(i, j)
Next
For i = 1 To n
    For j = 1 To n
        c(i + 1, j) = ata(i, j)
    Next
Next
For i = 1 To n
    For j = 1 To n
        c(n + 1 + i, j) = ytxb(i, j)
    Next
Next
End Sub

